/*   1:    */ package org.jetbrains.jps.model.java.impl;
/*   2:    */ 
/*   3:    */

import com.intellij.openapi.util.io.FileUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jps.model.JpsDummyElement;
import org.jetbrains.jps.model.JpsGlobal;
import org.jetbrains.jps.model.JpsProject;
import org.jetbrains.jps.model.java.*;
import org.jetbrains.jps.model.java.compiler.JpsJavaCompilerConfiguration;
import org.jetbrains.jps.model.java.impl.compiler.JpsJavaCompilerConfigurationImpl;
import org.jetbrains.jps.model.java.impl.runConfiguration.JpsApplicationRunConfigurationPropertiesImpl;
import org.jetbrains.jps.model.java.runConfiguration.JpsApplicationRunConfigurationProperties;
import org.jetbrains.jps.model.java.runConfiguration.JpsApplicationRunConfigurationState;
import org.jetbrains.jps.model.library.JpsOrderRootType;
import org.jetbrains.jps.model.library.JpsTypedLibrary;
import org.jetbrains.jps.model.library.sdk.JpsSdk;
import org.jetbrains.jps.model.library.sdk.JpsSdkReference;
import org.jetbrains.jps.model.module.JpsDependencyElement;
import org.jetbrains.jps.model.module.JpsModule;
import org.jetbrains.jps.model.module.JpsModuleReference;
import org.jetbrains.jps.util.JpsPathUtil;

import java.io.File;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;

/*   4:    */
/*   5:    */
/*   6:    */
/*   7:    */
/*   8:    */
/*   9:    */
/*  10:    */
/*  11:    */
/*  12:    */
/*  13:    */
/*  14:    */
/*  15:    */
/*  16:    */
/*  17:    */
/*  18:    */
/*  19:    */
/*  20:    */
/*  21:    */
/*  22:    */
/*  23:    */
/*  24:    */
/*  25:    */
/*  26:    */
/*  27:    */
/*  28:    */
/*  29:    */
/*  30:    */
/*  31:    */
/*  32:    */
/*  33:    */
/*  34:    */
/*  35:    */
/*  36:    */
/*  37:    */
/*  38:    */
/*  39:    */
/*  40:    */
/*  41:    */
/*  42:    */
/*  43:    */
/*  44:    */ 
/*  45:    */ public class JpsJavaExtensionServiceImpl
/*  46:    */   extends JpsJavaExtensionService
/*  47:    */ {
/*  48:    */   @NotNull
/*  49:    */   public JpsJavaProjectExtension getOrCreateProjectExtension(@NotNull JpsProject paramJpsProject)
/*  50:    */   {
/*  51: 50 */     if (paramJpsProject == null) {
/*  52: 50 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateProjectExtension" }));
/*  53:    */     }
/*  54: 50 */     JpsJavaProjectExtension tmp57_54 = ((JpsJavaProjectExtension)paramJpsProject.getContainer().getOrSetChild(JavaProjectExtensionRole.INSTANCE));
/*  55: 50 */     if (tmp57_54 == null) {
/*  56: 50 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateProjectExtension" }));
/*  57:    */     }
/*  58: 50 */     return tmp57_54;
/*  59:    */   }
/*  60:    */   
/*  61:    */   @Nullable
/*  62:    */   public JpsJavaProjectExtension getProjectExtension(@NotNull JpsProject paramJpsProject)
/*  63:    */   {
/*  64: 56 */     if (paramJpsProject == null) {
/*  65: 56 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getProjectExtension" }));
/*  66:    */     }
/*  67: 56 */     return (JpsJavaProjectExtension)paramJpsProject.getContainer().getChild(JavaProjectExtensionRole.INSTANCE);
/*  68:    */   }
/*  69:    */   
/*  70:    */   @NotNull
/*  71:    */   public JpsJavaModuleExtension getOrCreateModuleExtension(@NotNull JpsModule paramJpsModule)
/*  72:    */   {
/*  73: 62 */     if (paramJpsModule == null) {
/*  74: 62 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateModuleExtension" }));
/*  75:    */     }
/*  76: 62 */     JpsJavaModuleExtension tmp57_54 = ((JpsJavaModuleExtension)paramJpsModule.getContainer().getOrSetChild(JavaModuleExtensionRole.INSTANCE));
/*  77: 62 */     if (tmp57_54 == null) {
/*  78: 62 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateModuleExtension" }));
/*  79:    */     }
/*  80: 62 */     return tmp57_54;
/*  81:    */   }
/*  82:    */   
/*  83:    */   @NotNull
/*  84:    */   public JpsJavaDependencyExtension getOrCreateDependencyExtension(@NotNull JpsDependencyElement paramJpsDependencyElement)
/*  85:    */   {
/*  86: 68 */     if (paramJpsDependencyElement == null) {
/*  87: 68 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateDependencyExtension" }));
/*  88:    */     }
/*  89: 68 */     JpsJavaDependencyExtension tmp57_54 = ((JpsJavaDependencyExtension)paramJpsDependencyElement.getContainer().getOrSetChild(JpsJavaDependencyExtensionRole.INSTANCE));
/*  90: 68 */     if (tmp57_54 == null) {
/*  91: 68 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateDependencyExtension" }));
/*  92:    */     }
/*  93: 68 */     return tmp57_54;
/*  94:    */   }
/*  95:    */   
/*  96:    */   public JpsJavaDependencyExtension getDependencyExtension(@NotNull JpsDependencyElement paramJpsDependencyElement)
/*  97:    */   {
/*  98: 73 */     if (paramJpsDependencyElement == null) {
/*  99: 73 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getDependencyExtension" }));
/* 100:    */     }
/* 101: 73 */     return (JpsJavaDependencyExtension)paramJpsDependencyElement.getContainer().getChild(JpsJavaDependencyExtensionRole.INSTANCE);
/* 102:    */   }
/* 103:    */   
/* 104:    */   @Nullable
/* 105:    */   public JpsJavaModuleExtension getModuleExtension(@NotNull JpsModule paramJpsModule)
/* 106:    */   {
/* 107: 79 */     if (paramJpsModule == null) {
/* 108: 79 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getModuleExtension" }));
/* 109:    */     }
/* 110: 79 */     return (JpsJavaModuleExtension)paramJpsModule.getContainer().getChild(JavaModuleExtensionRole.INSTANCE);
/* 111:    */   }
/* 112:    */   
/* 113:    */   @NotNull
/* 114:    */   public ExplodedDirectoryModuleExtension getOrCreateExplodedDirectoryExtension(@NotNull JpsModule paramJpsModule)
/* 115:    */   {
/* 116: 85 */     if (paramJpsModule == null) {
/* 117: 85 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateExplodedDirectoryExtension" }));
/* 118:    */     }
/* 119: 85 */     ExplodedDirectoryModuleExtension tmp57_54 = ((ExplodedDirectoryModuleExtension)paramJpsModule.getContainer().getOrSetChild(ExplodedDirectoryModuleExtensionImpl.ExplodedDirectoryModuleExtensionRole.INSTANCE));
/* 120: 85 */     if (tmp57_54 == null) {
/* 121: 85 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateExplodedDirectoryExtension" }));
/* 122:    */     }
/* 123: 85 */     return tmp57_54;
/* 124:    */   }
/* 125:    */   
/* 126:    */   @Nullable
/* 127:    */   public ExplodedDirectoryModuleExtension getExplodedDirectoryExtension(@NotNull JpsModule paramJpsModule)
/* 128:    */   {
/* 129: 91 */     if (paramJpsModule == null) {
/* 130: 91 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getExplodedDirectoryExtension" }));
/* 131:    */     }
/* 132: 91 */     return (ExplodedDirectoryModuleExtension)paramJpsModule.getContainer().getChild(ExplodedDirectoryModuleExtensionImpl.ExplodedDirectoryModuleExtensionRole.INSTANCE);
/* 133:    */   }
/* 134:    */   
/* 135:    */   @NotNull
/* 136:    */   public List<JpsDependencyElement> getDependencies(JpsModule paramJpsModule, JpsJavaClasspathKind paramJpsJavaClasspathKind, boolean paramBoolean)
/* 137:    */   {
/* 138: 97 */     ArrayList localArrayList = new ArrayList();
/* 139: 98 */     for (JpsDependencyElement localJpsDependencyElement : paramJpsModule.getDependenciesList().getDependencies())
/* 140:    */     {
/* 141: 99 */       JpsJavaDependencyExtension localJpsJavaDependencyExtension = getDependencyExtension(localJpsDependencyElement);
/* 142:100 */       if ((localJpsJavaDependencyExtension == null) || ((localJpsJavaDependencyExtension.getScope().isIncludedIn(paramJpsJavaClasspathKind)) && ((!paramBoolean) || (localJpsJavaDependencyExtension.isExported())))) {
/* 143:101 */         localArrayList.add(localJpsDependencyElement);
/* 144:    */       }
/* 145:    */     }
/* 146:104 */     ArrayList tmp105_103 = localArrayList;
/* 147:104 */     if (tmp105_103 == null) {
/* 148:104 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getDependencies" }));
/* 149:    */     }
/* 150:104 */     return tmp105_103;
/* 151:    */   }
/* 152:    */   
/* 153:    */   public LanguageLevel getLanguageLevel(JpsModule paramJpsModule)
/* 154:    */   {
/* 155:109 */     JpsJavaModuleExtension localJpsJavaModuleExtension = getModuleExtension(paramJpsModule);
/* 156:110 */     if (localJpsJavaModuleExtension == null) {
/* 157:110 */       return null;
/* 158:    */     }
/* 159:111 */     LanguageLevel localLanguageLevel = localJpsJavaModuleExtension.getLanguageLevel();
/* 160:112 */     if (localLanguageLevel != null) {
/* 161:112 */       return localLanguageLevel;
/* 162:    */     }
/* 163:113 */     JpsJavaProjectExtension localJpsJavaProjectExtension = getProjectExtension(paramJpsModule.getProject());
/* 164:114 */     return localJpsJavaProjectExtension != null ? localJpsJavaProjectExtension.getLanguageLevel() : null;
/* 165:    */   }
/* 166:    */   
/* 167:    */   public String getOutputUrl(JpsModule paramJpsModule, boolean paramBoolean)
/* 168:    */   {
/* 169:119 */     JpsJavaModuleExtension localJpsJavaModuleExtension = getModuleExtension(paramJpsModule);
/* 170:120 */     if (localJpsJavaModuleExtension == null) {
/* 171:120 */       return null;
/* 172:    */     }
/* 173:121 */     if (localJpsJavaModuleExtension.isInheritOutput())
/* 174:    */     {
/* 175:122 */       JpsJavaProjectExtension localJpsJavaProjectExtension = getProjectExtension(paramJpsModule.getProject());
/* 176:123 */       if (localJpsJavaProjectExtension == null) {
/* 177:123 */         return null;
/* 178:    */       }
/* 179:124 */       String str = localJpsJavaProjectExtension.getOutputUrl();
/* 180:125 */       if (str == null) {
/* 181:125 */         return null;
/* 182:    */       }
/* 183:126 */       return str + "/" + (paramBoolean ? "test" : "production") + "/" + paramJpsModule.getName();
/* 184:    */     }
/* 185:128 */     return paramBoolean ? localJpsJavaModuleExtension.getTestOutputUrl() : localJpsJavaModuleExtension.getOutputUrl();
/* 186:    */   }
/* 187:    */   
/* 188:    */   @Nullable
/* 189:    */   public File getOutputDirectory(JpsModule paramJpsModule, boolean paramBoolean)
/* 190:    */   {
/* 191:134 */     String str = getOutputUrl(paramJpsModule, paramBoolean);
/* 192:135 */     return str != null ? JpsPathUtil.urlToFile(str) : null;
/* 193:    */   }
/* 194:    */   
/* 195:    */   public JpsTypedLibrary<JpsSdk<JpsDummyElement>> addJavaSdk(@NotNull JpsGlobal paramJpsGlobal, @NotNull String paramString1, @NotNull String paramString2)
/* 196:    */   {
/* 197:140 */     if (paramJpsGlobal == null) {
/* 198:140 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "addJavaSdk" }));
/* 199:    */     }
/* 200:140 */     if (paramString1 == null) {
/* 201:140 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "1", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "addJavaSdk" }));
/* 202:    */     }
/* 203:140 */     if (paramString2 == null) {
/* 204:140 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "2", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "addJavaSdk" }));
/* 205:    */     }
/* 206:140 */     String str = JdkVersionDetector.getInstance().detectJdkVersion(paramString2);
/* 207:141 */     JpsTypedLibrary localJpsTypedLibrary = paramJpsGlobal.addSdk(paramString1, paramString2, str, JpsJavaSdkType.INSTANCE);
/* 208:142 */     File localFile1 = new File(FileUtil.toSystemDependentName(paramString2));
/* 209:143 */     List localList = JavaSdkUtil.getJdkClassesRoots(localFile1, false);
/* 210:144 */     for (File localFile2 : localList) {
/* 211:145 */       localJpsTypedLibrary.addRoot(localFile2, JpsOrderRootType.COMPILED);
/* 212:    */     }
/* 213:147 */     return localJpsTypedLibrary;
/* 214:    */   }
/* 215:    */   
/* 216:    */   @Nullable
/* 217:    */   public JpsJavaCompilerConfiguration getCompilerConfiguration(@NotNull JpsProject paramJpsProject)
/* 218:    */   {
/* 219:153 */     if (paramJpsProject == null) {
/* 220:153 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getCompilerConfiguration" }));
/* 221:    */     }
/* 222:153 */     return (JpsJavaCompilerConfiguration)paramJpsProject.getContainer().getChild(JpsJavaCompilerConfigurationImpl.ROLE);
/* 223:    */   }
/* 224:    */   
/* 225:    */   @NotNull
/* 226:    */   public JpsJavaCompilerConfiguration getOrCreateCompilerConfiguration(@NotNull JpsProject paramJpsProject)
/* 227:    */   {
/* 228:159 */     if (paramJpsProject == null) {
/* 229:159 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateCompilerConfiguration" }));
/* 230:    */     }
/* 231:159 */     JpsJavaCompilerConfiguration localJpsJavaCompilerConfiguration = getCompilerConfiguration(paramJpsProject);
/* 232:160 */     if (localJpsJavaCompilerConfiguration == null) {
/* 233:161 */       localJpsJavaCompilerConfiguration = (JpsJavaCompilerConfiguration)paramJpsProject.getContainer().setChild(JpsJavaCompilerConfigurationImpl.ROLE, new JpsJavaCompilerConfigurationImpl());
/* 234:    */     }
/* 235:163 */     JpsJavaCompilerConfiguration tmp77_76 = localJpsJavaCompilerConfiguration;
/* 236:163 */     if (tmp77_76 == null) {
/* 237:163 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "getOrCreateCompilerConfiguration" }));
/* 238:    */     }
/* 239:163 */     return tmp77_76;
/* 240:    */   }
/* 241:    */   
/* 242:    */   @NotNull
/* 243:    */   public JpsSdkReference<JpsDummyElement> createWrappedJavaSdkReference(@NotNull JpsJavaSdkTypeWrapper paramJpsJavaSdkTypeWrapper, @NotNull JpsSdkReference<?> paramJpsSdkReference)
/* 244:    */   {
/* 245:170 */     if (paramJpsJavaSdkTypeWrapper == null) {
/* 246:170 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createWrappedJavaSdkReference" }));
/* 247:    */     }
/* 248:170 */     if (paramJpsSdkReference == null) {
/* 249:170 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "1", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createWrappedJavaSdkReference" }));
/* 250:    */     }
/* 251:170 */     void tmp91_88 = new JpsWrappedJavaSdkReferenceImpl(paramJpsJavaSdkTypeWrapper, paramJpsSdkReference);
/* 252:170 */     if (tmp91_88 == null) {
/* 253:170 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createWrappedJavaSdkReference" }));
/* 254:    */     }
/* 255:170 */     return tmp91_88;
/* 256:    */   }
/* 257:    */   
/* 258:    */   @NotNull
/* 259:    */   public JpsApplicationRunConfigurationProperties createRunConfigurationProperties(JpsApplicationRunConfigurationState paramJpsApplicationRunConfigurationState)
/* 260:    */   {
/* 261:176 */     void tmp8_5 = new JpsApplicationRunConfigurationPropertiesImpl(paramJpsApplicationRunConfigurationState);
/* 262:176 */     if (tmp8_5 == null) {
/* 263:176 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createRunConfigurationProperties" }));
/* 264:    */     }
/* 265:176 */     return tmp8_5;
/* 266:    */   }
/* 267:    */   
/* 268:    */   @NotNull
/* 269:    */   public JavaSourceRootProperties createSourceRootProperties(@NotNull String paramString, boolean paramBoolean)
/* 270:    */   {
/* 271:182 */     if (paramString == null) {
/* 272:182 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createSourceRootProperties" }));
/* 273:    */     }
/* 274:182 */     void tmp50_47 = new JavaSourceRootProperties(paramString, paramBoolean);
/* 275:182 */     if (tmp50_47 == null) {
/* 276:182 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createSourceRootProperties" }));
/* 277:    */     }
/* 278:182 */     return tmp50_47;
/* 279:    */   }
/* 280:    */   
/* 281:    */   @NotNull
/* 282:    */   public JavaSourceRootProperties createSourceRootProperties(@NotNull String paramString)
/* 283:    */   {
/* 284:188 */     if (paramString == null) {
/* 285:188 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createSourceRootProperties" }));
/* 286:    */     }
/* 287:188 */     JavaSourceRootProperties tmp47_44 = createSourceRootProperties(paramString, false);
/* 288:188 */     if (tmp47_44 == null) {
/* 289:188 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createSourceRootProperties" }));
/* 290:    */     }
/* 291:188 */     return tmp47_44;
/* 292:    */   }
/* 293:    */   
/* 294:    */   @NotNull
/* 295:    */   public JpsProductionModuleOutputPackagingElement createProductionModuleOutput(@NotNull JpsModuleReference paramJpsModuleReference)
/* 296:    */   {
/* 297:194 */     if (paramJpsModuleReference == null) {
/* 298:194 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createProductionModuleOutput" }));
/* 299:    */     }
/* 300:194 */     void tmp49_46 = new JpsProductionModuleOutputPackagingElementImpl(paramJpsModuleReference);
/* 301:194 */     if (tmp49_46 == null) {
/* 302:194 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createProductionModuleOutput" }));
/* 303:    */     }
/* 304:194 */     return tmp49_46;
/* 305:    */   }
/* 306:    */   
/* 307:    */   @NotNull
/* 308:    */   public JpsTestModuleOutputPackagingElement createTestModuleOutput(@NotNull JpsModuleReference paramJpsModuleReference)
/* 309:    */   {
/* 310:200 */     if (paramJpsModuleReference == null) {
/* 311:200 */       throw new IllegalArgumentException(String.format("Argument %s for @NotNull parameter of %s.%s must not be null", new Object[] { "0", "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createTestModuleOutput" }));
/* 312:    */     }
/* 313:200 */     void tmp49_46 = new JpsTestModuleOutputPackagingElementImpl(paramJpsModuleReference);
/* 314:200 */     if (tmp49_46 == null) {
/* 315:200 */       throw new IllegalStateException(String.format("@NotNull method %s.%s must not return null", new Object[] { "org/jetbrains/jps/model/java/impl/JpsJavaExtensionServiceImpl", "createTestModuleOutput" }));
/* 316:    */     }
/* 317:200 */     return tmp49_46;
/* 318:    */   }
/* 319:    */   
/* 320:    */   public JpsJavaDependenciesEnumerator enumerateDependencies(Collection<JpsModule> paramCollection)
/* 321:    */   {
/* 322:205 */     return new JpsJavaDependenciesEnumeratorImpl(paramCollection);
/* 323:    */   }
/* 324:    */   
/* 325:    */   protected JpsJavaDependenciesEnumerator enumerateDependencies(JpsProject paramJpsProject)
/* 326:    */   {
/* 327:210 */     return new JpsJavaDependenciesEnumeratorImpl(paramJpsProject.getModules());
/* 328:    */   }
/* 329:    */   
/* 330:    */   protected JpsJavaDependenciesEnumerator enumerateDependencies(JpsModule paramJpsModule)
/* 331:    */   {
/* 332:215 */     return new JpsJavaDependenciesEnumeratorImpl(Collections.singletonList(paramJpsModule));
/* 333:    */   }
/* 334:    */ }



/* Location:           E:\idea\

 * Qualified Name:     org.jetbrains.jps.model.java.impl.JpsJavaExtensionServiceImpl

 * JD-Core Version:    0.7.0.1

 */